package ar.com.indra.dao.impl;

import org.springframework.jdbc.core.support.JdbcDaoSupport;

import ar.com.indra.beans.EncuestaDTO;
import ar.com.indra.dao.EncuestaDAO;
import ar.com.indra.mappers.EncuestaMapper;


public class EncuestaDaoImpl extends JdbcDaoSupport implements EncuestaDAO { //extends JdbcDaoSupport

	public int insertEncuesta(EncuestaDTO u) {
		// falta implementar
		return 0;
	}

	public int updateEncuesta(EncuestaDTO u) {
		// falta implementar
		return 0;
	}

	public EncuestaDTO selectEncuesta(int id) {	
		return null;
	}
	

	public EncuestaDTO getEncuestaById(Integer idEncuesta) throws Exception {
		System.out.println("EncuestaDaoImpl.getEncuestaById(): INICIO");
		System.out.println("idUser: " + idEncuesta);
		
		String sql = "Select * from sesc_usuarios where id_usuario = ?";

		EncuestaDTO encuesta = (EncuestaDTO) getJdbcTemplate().queryForObject(sql,
				new Object[] { idEncuesta }, new EncuestaMapper());

		if (encuesta == null){
			System.out.println("-> NO SE RECUPERO LA ENCUESTA.");
		} else {
			System.out.println("-> Titulo recuperado: " + encuesta.getTitulo() + ", " + encuesta.getEncabezado() + " - ");
		}
		
		System.out.println("UsuarioDaoImpl.getUsuarioById(): FIN");
		
		return encuesta;
	}

	@Override
	public EncuestaDTO findEncuestaActiva()
			throws Exception {
		System.out.println("EncuestaDaoImpl.findEncuestaActiva(): INICIO");		
		
		String sql = "Select * " +
				     "from SESC_ENCUESTAS e " +
				     "where e.fecha_vigencia_desde < = sysdate " +
				     "and e.fecha_vigencia_hasta > = sysdate";

		EncuestaDTO encuesta = (EncuestaDTO) getJdbcTemplate().queryForObject(sql,
				new Object[] {  }, new EncuestaMapper());

		if (encuesta == null){
			System.out.println("-> NO SE RECUPERO LA ENCUESTA.");
		} else {
			System.out.println("-> Titulo recuperado: " + encuesta.getTitulo() + ", " + encuesta.getEncabezado() + " - ");
		}
		
		System.out.println("EncuestaDaoImpl.findEncuestaActiva(): FIN");
		
		return encuesta;
	}
	

}
